home *** CD-ROM | disk | FTP | other *** search
/ Apple Developer Connection 1998 Fall: Game Toolkit / Disc.iso / SDKs / QuickTime Mac / ComponentIncludes / ImageCompression.k.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-03-27  |  11.9 KB  |  218 lines  |  [TEXT/MPS ]

  1. /*
  2.      File:        ImageCompression.k.h
  3.  
  4.      Contains:    QuickTime interfaces
  5.  
  6.      Version:    Technology:    
  7.                  Release:    QuickTime 3.0
  8.  
  9.      Copyright:    © 1990-1998 by Apple Computer, Inc., all rights reserved
  10.  
  11.      Bugs?:        Please include the the file and version information (from above) with
  12.                  the problem description.  Developers belonging to one of the Apple
  13.                  developer programs can submit bug reports to:
  14.  
  15.                      devsupport@apple.com
  16.  
  17. */
  18. #ifndef __IMAGECOMPRESSION_K__
  19. #define __IMAGECOMPRESSION_K__
  20.  
  21. #include <ImageCompression.h>
  22.  
  23. /*
  24.     Example usage:
  25.  
  26.         #define GRAPHICSIMPORT_BASENAME()    Fred
  27.         #define GRAPHICSIMPORT_GLOBALS()    FredGlobalsHandle
  28.         #include <ImageCompression.k.h>
  29.  
  30.     To specify that your component implementation does not use globals, do not #define GRAPHICSIMPORT_GLOBALS
  31. */
  32. #ifdef GRAPHICSIMPORT_BASENAME
  33.     #ifndef GRAPHICSIMPORT_GLOBALS
  34.         #define GRAPHICSIMPORT_GLOBALS() 
  35.         #define ADD_GRAPHICSIMPORT_COMMA 
  36.     #else
  37.         #define ADD_GRAPHICSIMPORT_COMMA ,
  38.     #endif
  39.     #define GRAPHICSIMPORT_GLUE(a,b) a##b
  40.     #define GRAPHICSIMPORT_STRCAT(a,b) GRAPHICSIMPORT_GLUE(a,b)
  41.     #define ADD_GRAPHICSIMPORT_BASENAME(name) GRAPHICSIMPORT_STRCAT(GRAPHICSIMPORT_BASENAME(),name)
  42.  
  43.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetDataReference) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA Handle  dataRef, OSType  dataReType);
  44.  
  45.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetDataReference) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA Handle * dataRef, OSType * dataReType);
  46.  
  47.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetDataFile) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA const FSSpec * theFile);
  48.  
  49.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetDataFile) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA FSSpec * theFile);
  50.  
  51.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetDataHandle) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA Handle  h);
  52.  
  53.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetDataHandle) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA Handle * h);
  54.  
  55.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetImageDescription) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA ImageDescriptionHandle * desc);
  56.  
  57.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetDataOffsetAndSize) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA unsigned long * offset, unsigned long * size);
  58.  
  59.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(ReadData) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA void * dataPtr, unsigned long  dataOffset, unsigned long  dataSize);
  60.  
  61.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetClip) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA RgnHandle  clipRgn);
  62.  
  63.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetClip) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA RgnHandle * clipRgn);
  64.  
  65.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetSourceRect) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA const Rect * sourceRect);
  66.  
  67.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetSourceRect) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA Rect * sourceRect);
  68.  
  69.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetNaturalBounds) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA Rect * naturalBounds);
  70.  
  71.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(Draw) (GRAPHICSIMPORT_GLOBALS());
  72.  
  73.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetGWorld) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA CGrafPtr  port, GDHandle  gd);
  74.  
  75.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetGWorld) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA CGrafPtr * port, GDHandle * gd);
  76.  
  77.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetMatrix) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA const MatrixRecord * matrix);
  78.  
  79.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetMatrix) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA MatrixRecord * matrix);
  80.  
  81.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetBoundsRect) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA const Rect * bounds);
  82.  
  83.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetBoundsRect) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA Rect * bounds);
  84.  
  85.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SaveAsPicture) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA const FSSpec * fss, ScriptCode  scriptTag);
  86.  
  87.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetGraphicsMode) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA long  graphicsMode, const RGBColor * opColor);
  88.  
  89.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetGraphicsMode) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA long * graphicsMode, RGBColor * opColor);
  90.  
  91.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetQuality) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA CodecQ  quality);
  92.  
  93.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetQuality) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA CodecQ * quality);
  94.  
  95.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SaveAsQuickTimeImageFile) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA const FSSpec * fss, ScriptCode  scriptTag);
  96.  
  97.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetDataReferenceOffsetAndLimit) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA unsigned long  offset, unsigned long  limit);
  98.  
  99.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetDataReferenceOffsetAndLimit) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA unsigned long * offset, unsigned long * limit);
  100.  
  101.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetAliasedDataReference) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA Handle * dataRef, OSType * dataRefType);
  102.  
  103.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(Validate) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA Boolean * valid);
  104.  
  105.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetMetaData) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA void * userData);
  106.  
  107.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetMIMETypeList) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA void * qtAtomContainerPtr);
  108.  
  109.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(DoesDrawAllPixels) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA short * drawsAllPixels);
  110.  
  111.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetAsPicture) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA PicHandle * picture);
  112.  
  113.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(ExportImageFile) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA OSType  fileType, OSType  fileCreator, const FSSpec * fss, ScriptCode  scriptTag);
  114.  
  115.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetExportImageTypeList) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA void * qtAtomContainerPtr);
  116.  
  117.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(DoExportImageFileDialog) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA const FSSpec * inDefaultSpec, StringPtr  prompt, ModalFilterYDUPP  filterProc, OSType * outExportedType, FSSpec * outExportedSpec, ScriptCode * outScriptTag);
  118.  
  119.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetExportSettingsAsAtomContainer) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA void * qtAtomContainerPtr);
  120.  
  121.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetExportSettingsFromAtomContainer) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA void * qtAtomContainer);
  122.  
  123.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(SetProgressProc) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA ICMProgressProcRecordPtr  progressProc);
  124.  
  125.     EXTERN_API( ComponentResult  ) ADD_GRAPHICSIMPORT_BASENAME(GetProgressProc) (GRAPHICSIMPORT_GLOBALS() ADD_GRAPHICSIMPORT_COMMA ICMProgressProcRecordPtr  progressProc);
  126.  
  127.  
  128.     /* MixedMode ProcInfo constants for component calls */
  129.     enum {
  130.         uppGraphicsImportSetDataReferenceProcInfo = 0x00000FF0,
  131.         uppGraphicsImportGetDataReferenceProcInfo = 0x00000FF0,
  132.         uppGraphicsImportSetDataFileProcInfo = 0x000003F0,
  133.         uppGraphicsImportGetDataFileProcInfo = 0x000003F0,
  134.         uppGraphicsImportSetDataHandleProcInfo = 0x000003F0,
  135.         uppGraphicsImportGetDataHandleProcInfo = 0x000003F0,
  136.         uppGraphicsImportGetImageDescriptionProcInfo = 0x000003F0,
  137.         uppGraphicsImportGetDataOffsetAndSizeProcInfo = 0x00000FF0,
  138.         uppGraphicsImportReadDataProcInfo = 0x00003FF0,
  139.         uppGraphicsImportSetClipProcInfo = 0x000003F0,
  140.         uppGraphicsImportGetClipProcInfo = 0x000003F0,
  141.         uppGraphicsImportSetSourceRectProcInfo = 0x000003F0,
  142.         uppGraphicsImportGetSourceRectProcInfo = 0x000003F0,
  143.         uppGraphicsImportGetNaturalBoundsProcInfo = 0x000003F0,
  144.         uppGraphicsImportDrawProcInfo = 0x000000F0,
  145.         uppGraphicsImportSetGWorldProcInfo = 0x00000FF0,
  146.         uppGraphicsImportGetGWorldProcInfo = 0x00000FF0,
  147.         uppGraphicsImportSetMatrixProcInfo = 0x000003F0,
  148.         uppGraphicsImportGetMatrixProcInfo = 0x000003F0,
  149.         uppGraphicsImportSetBoundsRectProcInfo = 0x000003F0,
  150.         uppGraphicsImportGetBoundsRectProcInfo = 0x000003F0,
  151.         uppGraphicsImportSaveAsPictureProcInfo = 0x00000BF0,
  152.         uppGraphicsImportSetGraphicsModeProcInfo = 0x00000FF0,
  153.         uppGraphicsImportGetGraphicsModeProcInfo = 0x00000FF0,
  154.         uppGraphicsImportSetQualityProcInfo = 0x000003F0,
  155.         uppGraphicsImportGetQualityProcInfo = 0x000003F0,
  156.         uppGraphicsImportSaveAsQuickTimeImageFileProcInfo = 0x00000BF0,
  157.         uppGraphicsImportSetDataReferenceOffsetAndLimitProcInfo = 0x00000FF0,
  158.         uppGraphicsImportGetDataReferenceOffsetAndLimitProcInfo = 0x00000FF0,
  159.         uppGraphicsImportGetAliasedDataReferenceProcInfo = 0x00000FF0,
  160.         uppGraphicsImportValidateProcInfo = 0x000003F0,
  161.         uppGraphicsImportGetMetaDataProcInfo = 0x000003F0,
  162.         uppGraphicsImportGetMIMETypeListProcInfo = 0x000003F0,
  163.         uppGraphicsImportDoesDrawAllPixelsProcInfo = 0x000003F0,
  164.         uppGraphicsImportGetAsPictureProcInfo = 0x000003F0,
  165.         uppGraphicsImportExportImageFileProcInfo = 0x0000BFF0,
  166.         uppGraphicsImportGetExportImageTypeListProcInfo = 0x000003F0,
  167.         uppGraphicsImportDoExportImageFileDialogProcInfo = 0x000FFFF0,
  168.         uppGraphicsImportGetExportSettingsAsAtomContainerProcInfo = 0x000003F0,
  169.         uppGraphicsImportSetExportSettingsFromAtomContainerProcInfo = 0x000003F0,
  170.         uppGraphicsImportSetProgressProcProcInfo = 0x000003F0,
  171.         uppGraphicsImportGetProgressProcProcInfo = 0x000003F0
  172.     };
  173.  
  174. #endif    /* GRAPHICSIMPORT_BASENAME */
  175.  
  176. /*
  177.     Example usage:
  178.  
  179.         #define IMAGETRANSCODER_BASENAME()    Fred
  180.         #define IMAGETRANSCODER_GLOBALS()    FredGlobalsHandle
  181.         #include <ImageCompression.k.h>
  182.  
  183.     To specify that your component implementation does not use globals, do not #define IMAGETRANSCODER_GLOBALS
  184. */
  185. #ifdef IMAGETRANSCODER_BASENAME
  186.     #ifndef IMAGETRANSCODER_GLOBALS
  187.         #define IMAGETRANSCODER_GLOBALS() 
  188.         #define ADD_IMAGETRANSCODER_COMMA 
  189.     #else
  190.         #define ADD_IMAGETRANSCODER_COMMA ,
  191.     #endif
  192.     #define IMAGETRANSCODER_GLUE(a,b) a##b
  193.     #define IMAGETRANSCODER_STRCAT(a,b) IMAGETRANSCODER_GLUE(a,b)
  194.     #define ADD_IMAGETRANSCODER_BASENAME(name) IMAGETRANSCODER_STRCAT(IMAGETRANSCODER_BASENAME(),name)
  195.  
  196.     EXTERN_API( ComponentResult  ) ADD_IMAGETRANSCODER_BASENAME(BeginSequence) (IMAGETRANSCODER_GLOBALS() ADD_IMAGETRANSCODER_COMMA ImageDescriptionHandle  srcDesc, ImageDescriptionHandle * dstDesc, void * data, long  dataSize);
  197.  
  198.     EXTERN_API( ComponentResult  ) ADD_IMAGETRANSCODER_BASENAME(Convert) (IMAGETRANSCODER_GLOBALS() ADD_IMAGETRANSCODER_COMMA void * srcData, long  srcDataSize, void ** dstData, long * dstDataSize);
  199.  
  200.     EXTERN_API( ComponentResult  ) ADD_IMAGETRANSCODER_BASENAME(DisposeData) (IMAGETRANSCODER_GLOBALS() ADD_IMAGETRANSCODER_COMMA void * dstData);
  201.  
  202.     EXTERN_API( ComponentResult  ) ADD_IMAGETRANSCODER_BASENAME(EndSequence) (IMAGETRANSCODER_GLOBALS());
  203.  
  204.  
  205.     /* MixedMode ProcInfo constants for component calls */
  206.     enum {
  207.         uppImageTranscoderBeginSequenceProcInfo = 0x0000FFF0,
  208.         uppImageTranscoderConvertProcInfo = 0x0000FFF0,
  209.         uppImageTranscoderDisposeDataProcInfo = 0x000003F0,
  210.         uppImageTranscoderEndSequenceProcInfo = 0x000000F0
  211.     };
  212.  
  213. #endif    /* IMAGETRANSCODER_BASENAME */
  214.  
  215.  
  216. #endif /* __IMAGECOMPRESSION_K__ */
  217.  
  218.